Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #150
This PR should fix the seemingly "random" file handle left open errors. In a few cases the tests were not using a context manager nor calling close when opening a datamodel from a file.
While this normally calls the destructor
__del__
:roman_datamodels/src/roman_datamodels/datamodels/_core.py
Lines 121 to 123 in c4b5d46
When the model in question goes out of scope, this is not ensured to happen immediately nor is in ensured to happen at the close of the interpreter, see the python docs. The seemingly "random" resource warning was detecting the cases where the models opened but not explicitly closed went out of scope, but the
__del__
had not been called yet. This can occur for all sorts of arbitrary reasons during any given execution of the tests (e.g. system load, memory address space, etc).Checklist
Added entry inCHANGES.rst
under the corresponding subsectionPassed romancal regression testing on Jenkins / PLWishMaster. Link: https://plwishmaster.stsci.edu:8081/job/RT/job/romancal/XXX/These only affectroman_datamodels
tests.